說好了這一篇要來結束api platform !! 既然要結束,就來講點補充的東西 => 除了json以外的 format
但是講了這麼多api platform 的東西 ,好像一直都沒有提到要怎麼設定進入點的開關及api docs的開關...
有種東西做完了但還沒包裝的感覺...
要設定開關,我們要到config目錄下的子目錄的api_platform.yaml裡
一開始會有預設的幾個屬性,如果要做額外的設定,可以在把相關屬性加上去,像我們要的開關就屬於額外要加的屬性
1.api docs 開關 => enable_docs
2.api 進入點開關 => enable_entrypoint
api_platform:
mapping:
paths: ['%kernel.project_dir%/src/Entity']
formats:
jsonld:
mime_types:
- application/ld+json
json:
mime_types:
- application/json
html:
mime_types:
- text/html
jsonhal:
mime_types:
- application/hal+json
enable_docs: false
enable_entrypoint: false
以上兩個設定的預設值是true 開啟 , false 為關閉 , 這兩個設定通常用在prod環境
format , 除了先前講到的json 和 jsonld外,還有一些其他的格式,像api_platform.yaml裡的其他兩種,
看起來由上到下就是常用順序XD,
假設我們今天要再加一個新的format,只要依序加下去,然後給mime_type就可以了
如果我們要在特定一支API裡要求特定的格式,可以先在Api Resource 的attributes設定裡
attributes={"pagination_items_per_page"=10,"pagination_client_enabled" = true,
"order"={"birthDay": "ASC"},
"formats"={"jsonld","json","html","html","jsonhal","csv"={"text/csv"}}
}
formats裡面放的是格式 , 等等 csv 後面那個是在幹嘛 ...?
那個是它的mime_type啦~因為我們在設定檔裡沒有CSV這個format , 也可以直接寫在這~
好了到這邊 , 終於把api platform告一段落了 ...
下一篇開始 ,每一篇都會舉一兩個實際開發的案例,
也就是分享小菜鳥一路走來有踩到的雷或是用到的東西或是一些基本的觀念
做任何事就像蓋房子一樣,地基要穩,不然上面的樓層蓋的在漂亮,有一天意外來了還是會崩塌
怎麼突然感慨了起來... XD